The invention relates to a data processing apparatus for an optical storage medium and a data processing method thereof, and more particularly, to a data processing apparatus and method utilized for reproducing data from an optical storage medium by utilizing individual checking modules.
An optical storage medium such as a DVD disc may suffer from improper formatting processes and improper utilization processes, and therefore becomes a bad disk with fail tracks. The physical identifications (IDs) of the defective sectors resulting from improper formatting processes are recorded in a primary defect list (PDL). FIG. 1A shows an entry in the primary defect list.
In addition to the primary defect list, a secondary defect list (SDL) is set up to record the physical IDs of the first sectors of defective error correction code (ECC) blocks (one ECC block includes 16 sectors) that resulted from improper utilization processes. For example, scratches or dust on the optical click will make some tracks unable to be utilized for recording data correctly, and these defects are recorded in the secondary defect list. An entry of the secondary defect list is shown in FIG. 1B. The physical IDs of the first sectors of the spare blocks which replace the defective ECC blocks are also recorded in the secondary defect list to help a data processing apparatus reproduce data from the optical storage medium properly. Since the data structures of the primary defect list and secondary defect list are well known to those skilled in this art, further description is omitted here for the sake of brevity.
A conventional data reproducing device, such as an optical disc drive, is developed for accessing information recorded on an optical disc. When receiving a read command from a host computer, the data reproducing device reads the optical disc and loads the primary defect list and the secondary defect list from the optical disc to a memory. When the digital data stored in the optical disc are transmitted into the data reproducing device, the data reproducing device counts IDs per sector of the digital data, and compares the counting result with the primary defect list and the secondary defect list stored in the memory to determine if the ID of the sector of the digital data is listed in the primary defect list or the secondary defect list. The determining results corresponding to the primary defect list helps the data reproducing device determine if the content of the sector is stored or not. The determined results corresponding to the secondary defect list are stored in the memory, and will be referenced in the following decoding process.
The decoding process is launched when the amount of stored data reaches that of an ECC block. Therefore, the determining results stored in the memory are read to check if the ECC block is a defective ECC block every time the amount of stored data reaches that of an ECC block. Since the storing and the decoding of the data are not performed in the same time, the amount of determined results stored in the memory is large, and the above-mentioned data reproducing procedure consumes a lot of time in reading the determined results stored in the memory. Moreover, the flow path of the data reproducing procedure is complex since the data reproducing device needs not to perform the decoding process but also to make the decision of whether the ECC block is allowed to be decoded or not according to the determined results.